Conventional Solid State Drives (SSDs) have used RAID-like redundancy to provide results similar to conventional hard disk drives (HDDs) to recover from certain types of errors. Such redundancy has typically been implemented as “1 die out of n” so that an entire NAND die is consumed by the redundancy. In an 8 NAND die, one of the NAND die is used for RAID-5-like redundancy, reducing capacity by ⅛th, but providing protection against various types of errors.
One issue with redundancy in a SSD is the overall capacity of the drive. Consumers want as much drive space to be available for data as possible. A SSD is normally manufactured with some type of over provisioning, which is the difference between the actual capacity and the advertized capacity. The over provisioning should be kept as low as possible to maintain competitive prices for each unit of available storage.
It would be desirable to implement a controller and/or drive in a solid state drive configuration to reduce over provisioning where user data is fully protected by a first redundancy scheme when user data occupies less than a preconfigured limit and a second redundancy scheme that protects less than all of the user data when the user data occupies drive space greater than the preconfigured limit.